# Audion canonical .gitignore
#
# Derived from the Hub Manager projection profile `audion_python_project_projection`,
# so a repository and its projection agree about what belongs in history. If the
# profile changes, this file changes with it - do not let the two drift.
#
# Why this exists: without it, a working project commits what the build downloads.
# Measured on Audion Media Tools: 215 MB of history against 7 MB of sources,
# because Tools/deno/deno.exe (94 MB) went in twice and portable PowerShell went
# in whole. Across thirty projects that is six gigabytes of nothing.
#
# The rule behind every line: git stores what a human wrote. Anything a build can
# fetch or regenerate does not belong in history, however convenient it seems at
# the time.

# --- payload the build downloads or generates ---
runtime/
wheelhouse/
Tools/
tools/
install/download/
install/downloads/
release/
dist/
build/
out/
site/
node_modules/

# --- work areas ---
logs/
output/
report/
temp/
tmp/
backup/
work/
workspace/
data/cache/
coverage/
htmlcov/
._runtime/
_pwsh_tmp/
system_core/powershell/
system_core/fzf.exe

# --- caches ---
__pycache__/
.pytest_cache/
.mypy_cache/
.ruff_cache/
.cache/
.tox/
.nox/
.eggs/
.venv/
venv/
env/
*.pyc
*.pyo

# --- binaries: nothing git should ever hold ---
*.exe
*.dll
*.pyd
*.so
*.dylib
*.msi
*.whl
*.jar
*.wasm
*.o
*.obj
*.lib
*.class

# --- archives ---
*.zip
*.7z
*.rar
*.tar
*.gz
*.iso
*.img

# --- media ---
*.mp4
*.mov
*.mkv
*.avi
*.wav
*.flac

# --- generated documents ---
# PDFs are rebuilt by Audion Build PDF Render and ship in release archives.
# The Hub Manager projection excludes them too.
*.pdf
Docs/PDF/
docs/PDF/

# --- secrets: never, under any circumstances ---
.env
.env.*
*.key
*.pem
*.pfx
*.p12
config/github/
config/keys/
config/ssh/
config/rclone/
*credential*
*.local.json
config/auth_profiles.json
config/remotes.local.json
config/secrets.local.json

# --- editor and system litter ---
~*.*
$*.*
*.tmp
*.bak
*.old
*.orig
*.backup
*.swp
*.rej
Thumbs.db
desktop.ini
.idea/
.vscode/

# --- release artifacts of the orchestrator ---
release_manifest.json
_archives_public_git/
_archives_private_git/
_archives_public_full/
_archives_private_full/
_audion_docs/

# --- empty folders are not git's business ---
# There are no .gitkeep markers in any project any more. install\init_folders.cmd
# recreates the tree, down to levels a marker never reached (Tools\ffmpeg\bin,
# report\gui_smoke_screenshots), and it runs from cleanup, build and the CLI.
# One owner for one fact.

# --- this project ---
# Working notes that are not part of the product. Kept out of history rather
# than out of the folder, so a draft never has to leave the workspace to be
# safe from a commit.
_local/
.DS_Store
